package com.example.demo.Entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.example.demo.Common.Enum.NoteType;
import com.example.demo.Common.Enum.VisibleScope;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.List;

/**
 *  笔记类
 */
@NoArgsConstructor
@AllArgsConstructor
@Data
public class Note {
    @TableId(value = "note_id",type = IdType.AUTO)
    private Integer noteId;
    /** 作者用户ID（外键） */
    private Integer userId;
    /** 笔记标题 */
    private String title;
    /** 文件名 */
    private String file;
    /** 笔记标签 */
    @TableField(exist = false)
    private List<String> tags=new ArrayList<String>();
    /** 存储标签 */
    @TableField("note_tags")
    private String noteTags;
    /** 笔记类型（个人笔记、思维笔记等） */
    private NoteType type;
    /** 笔记点赞数 */
    private Integer likeNum;
    /** 可见范围 */
    private VisibleScope visibleScope;
    /** 编辑范围 */
    private String modifyScope;
    /** 摘要 */
    private String summary;
    /** 创建时间 */
    private String createTime;
}
